﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication27
{
    public static class RozszerzonyAlgorytmEuklidesa
    {


        public static Liczba zrob(Liczba a, Liczba b)
        {
            Liczba u, w, x, z, q;

            Liczba jeden = new Liczba("1", a.system);
            Liczba zero = new Liczba(a.system);


            u = new Liczba("1", a.system);
            w = a;
            x = new Liczba(a.system);
            z = b;
            while (w.element[0]!=0)
            {
                if (Pomoce.Porownaj(w,z)==0)
                {
                    q = u; u = x; x = q;
                    q = w; w = z; z = q;
                }
                q = w / z;
                u -= q * x;
                w -= q * z;
            }
            if (Pomoce.Porownaj(z,jeden)==2)
            {
                if (x.znak == '-') x += b;
                return x;
            }
            else return null;
        }

       





    }
}
